﻿using System.Web.UI;
using System.Web.UI.WebControls;
using StockholmsStad.Web.UI.Class.Business;

namespace StockholmsStad.Web.UI.Controls
{
    /// <summary>
    /// Webcontrol för att mata in ett personnummer.
    /// </summary>
    public partial class PersonIdControl : UserControl
    {
        #region Properties

        /// <summary>
        /// Returnerar personnummret som ett objekt
        /// </summary>
        public PersonalNumber PersonalNumber
        {
            get { return new PersonalNumber(txtBirthDate.Text, txtPersonNumberLast.Text); }
            set
            {
                if (value != null)
                {
                    txtBirthDate.Text = value.BirthDateText;
                    txtPersonNumberLast.Text = value.PersonIdLastNumbersText;
                }
            }
        }

        /// <summary>
        /// Är personnummret skrivbart
        /// </summary>
        public bool EnabledText
        {
            get { return txtBirthDate.Enabled; }
            set
            {
                txtBirthDate.Enabled = value;
                txtPersonNumberLast.Enabled = value;
            }
        }

        #endregion

        /// <summary>
        /// Validerar att personnummret är giltigt
        /// </summary>
        /// <param name="source"></param>
        /// <param name="args"></param>
        protected void ValidPersonalNumber_ServerValidate(object source, ServerValidateEventArgs args)
        {
            args.IsValid = PersonalNumber.IsValid();
        }
    }
}